In its usual form, a Smart Card is a plastic card that contains an integrated circuit that may be accessed by a Smart Card-accessing device. Smart Card standards are provided in the International Organization for Standardization (ISO) Standard 7816. Smart Cards are useful for storing information concerning the Smart Card's owner. For example, a Smart Card may carry information about the Smart Card's owner's identity. Smart Card-accessing devices may retrieve and update the information stored by the Smart Card.
By inserting a Smart Card into a Smart Card-accessing device that is connected to a computer, the Smart Card's owner can provide information to the computer. Typically, such a computer executes an operating system and one or more applications that send information to and receive information from the Smart Card by invoking methods of an application programming interface (“API”) that the operating system exposes to the applications.
Different APIs comprise different methods for communicating with Smart Cards. Two different APIs that provide methods for communicating with Smart Cards are the Open Card Framework (“OCF”) API and the PC/SC API.
Sometimes multiple Smart Card-accessing devices are connected to the same computer, which under such circumstances typically is called a server computer. Each of a plurality of users may concurrently access the server computer through his own separate user session. If one user instructs an application to access a Smart Card-accessing device that contains another user's Smart Card, then the former user may be able to read information from and write information to the latter user's Smart Card.